package com.wisely.highlight_spring4.ch3.taskscheduler;

import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;

import java.text.SimpleDateFormat;
import java.util.Date;

/**
 * @ClassName ScheduledTaskService
 * @Package com.wisely.highlight_spring4.ch3.taskscheduler
 * @Description TODO
 * @Author zjb
 * @Date 2018/7/23 10:50
 * @Version 1.0
 **/
@Service
public class ScheduledTaskService {
    private static final SimpleDateFormat dateFormat = new SimpleDateFormat("HH:mm:ss");
    //通过@Scheduled声明该方法是计划任务，使用fixedRate属性每隔固定时间执行
    @Scheduled(fixedRate = 5000)
    public void reportCurrentTime(){
        System.out.println("每隔五秒执行一次 " +dateFormat.format(new Date()));
    }
    //使用cron属性可按照指定时间执行，本例指的是每天11点28分半执行；cron是UNIX和类UNIX(Linux)系统下的定时任务
    @Scheduled(cron ="0 29 11 * * ? ")
    public void fixTimeExecution(){
        System.out.println("在指定时间 "+ dateFormat.format(new Date())+" 执行");
    }

}
